package com.etone.smartAudit.vo.task;

import com.etone.smartAudit.enums.CheckState;
import com.etone.smartAudit.enums.TaskType;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * @author: 蒋学伟
 * @create: 2020-07-03 16:29:45
 * @Description BaseTaskVO
 */

@AllArgsConstructor
@NoArgsConstructor
@SuperBuilder
@Data
@ApiModel(value = "TaskListVO", description = "任务")
public class BaseTaskVO implements Serializable {

    @ApiModelProperty("id")
    private Integer id;

    @ApiModelProperty("任务名称")
    private String name;

    @ApiModelProperty("任务类型")
    private TaskType type;

    @ApiModelProperty("申请人id")
    private String createAdminId;

    @ApiModelProperty("申请人")
    private String createAdminName;

    @ApiModelProperty("申请时间")
    private Date createTime;

    @ApiModelProperty("预计工时")
    private Double workTime;

    @ApiModelProperty("预计完成时间")
    private Date workEndTime;

    @ApiModelProperty("处理节点人id")
    private String nodeAdminId;

    @ApiModelProperty("处理节点人")
    private String nodeAdminName;

    @ApiModelProperty("是否完结")
    private Boolean over;

    @ApiModelProperty("完结时间")
    private Date overTime;

    @ApiModelProperty("执行人")
    private List<TaskExecVO> taskExecs;

    @ApiModelProperty("实际工时(天)")
    private Double realWorkTime;

    @ApiModelProperty("评分")
    private Double score;

    @ApiModelProperty("处理状态")
    private CheckState state;

    @ApiModelProperty("项目id")
    private Integer itemId;

    @ApiModelProperty("项目名称")
    private String itemName;

    @ApiModelProperty("联系人")
    private String contact;

    @ApiModelProperty("联系方式")
    private String contactTel;
}
